#ifndef FFMPEGEXTRA_EYERWASMBLOB_OPENEVENT_HPP
#define FFMPEGEXTRA_EYERWASMBLOB_OPENEVENT_HPP

#include <string>

#include "EyerWASMCommon/EyerWASMEvent.hpp"
#include "EyerWASMCommon/EyerWASMBuffer.hpp"

namespace Eyer
{
    class EyerWASMBlob_OpenEvent : public EyerWASMEvent
    {
    public:
        EyerWASMBlob_OpenEvent(const std::string & blobUrl);
        ~EyerWASMBlob_OpenEvent();

        virtual int Run() override;

        int EyerWASMBlob_OpenEvent_Open_OnSucc(int blobKey, int64_t fileSize);
        int EyerWASMBlob_OpenEvent_Open_OnFail();

        int GetBlobKey();
        int64_t GetFileSize();
    private:
        std::string m_blobUrl = "";
        int m_blobKey = 0;
        int64_t m_fileSize = 0;
    };
}

#endif //FFMPEGEXTRA_EYERWASMBLOB_OPENEVENT_HPP
